package cn.myra.io;

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

public class TestCopyJpg {

	public static void main(String[] args) {

		// file对象指向jpg图片
		File fileJpg = new File("E:/LYW/shanshui.jpg");
		// 图片要复制到的文件目录
		File fileTarget = new File("D:/demo/ss1.jpg");

		try {
			//如果原始文件不存在
			if(!fileJpg.exists()) {
				fileJpg.createNewFile();
			}
			
			//如果目标文件不存在
			if (!fileTarget.exists()) {
				fileTarget.createNewFile();
			}

			// 定义输入流和输出流
			BufferedInputStream bis0 = new BufferedInputStream(new FileInputStream(fileJpg));
			BufferedOutputStream bos0 = new BufferedOutputStream(new FileOutputStream(fileTarget));
			// 接收字节流的数组
			byte[] b;
			// 定义末尾标志位
			int leng = -1;

			// 循环接收数据
			do {
				// 每次清空数组
				b = new byte[1024];
				// 接收字节流，
				leng = bis0.read(b);
				//判断并写出到目标文件
				if (leng > -1) {
					//抛IO异常
					bos0.write(b,0,leng);

				}
			} while (leng > -1);
			if(bis0!=null) {
			bis0.close();
			}
			bos0.flush();
			if(bos0!=null) {
			bos0.close();
			}
			System.out.println("复制完成");
		}catch (FileNotFoundException e) {
			System.out.println("文件未找到异常" + e.getMessage());
			e.printStackTrace();
		}  catch (IOException e) {
			System.out.println("IO异常" + e.getMessage());
			e.printStackTrace();
		}
		catch (Exception e) {
			System.out.println("发生异常" + e.getMessage());
			e.printStackTrace();
		}finally {
			
		}
	}

}
